The present invention relates to an electronic musical instrument formed of a network of processing units and designed to realize flexible and diverse extension of musical performance.
A conventional network system is composed of a plurality of electronic musical instruments which are interconnected to one another through Musical Instrument Digital Interface (MIDI). The MIDI is designed as a common standard for transmission of automatic performance data or the like. The MIDI enables one-way transmission of a performance data such as a key code from one to another of the electronic musical instruments which are distributed on the network. The conventional system using the MIDI may be added with other devices than the electronic instruments, such as a computer, a printer and a disk driver. However, in order to connect these devices to the network, each device disadvantageously requires a separate control program and a processor for running the program.
Another type of an electronic musical instrument system is disclosed, for example, in Japanese Patent Application Laid-open No. 62-129889 (1987). As shown in FIG. 33, this system is composed of a controller 201 which functions as one electronic musical instrument, another electronic musical instrument 202, a floppy disk device 203 and a printer 204, those of which are interconnected altogether by a network 205. The controller 201 includes various components such as processor (CPU) 206, read-only memory (ROM) 207 for a basic system, random access memory (RAM) 208 for a basic system, RAMs 209-1,209-2 and 209-3 for extended devices, tone generating circuit (TG) 210, output amplifier 211, loudspeaker 212, panel interface (I/F) 213, console panel 214, bas interface (I/F) 215, control interface (I/F) 216, command panel 217, start information input unit (SIIU) 218, and internal bas 219 which interconnects the various components.
In operation of the FIG. 33 system, the console panel 214 or else is manipulated to play a performance so that a corresponding performance data is inputted into the basic RAM 208 and the tone generating circuit 210 through the panel interface 213 within the controller 201. Then, the tone generating circuit 210 generates a certain tone signal, which is amplified by the output amplifier 211 and sounded from the loudspeaker 212. In this operation, the processor (CPU) 206 optionally applies various processings such as waveform shaping to the performance data inputted from the console panel 214. Thereafter, the processed performance data is fed to the tone generating circuit 210. The processor 206 carries out the various processings based on an operating system program stored in the basic ROM 207. The basic RAM 208 is used for primary storage of the performance data and for various working areas.
Referring to FIG. 34, brief description is given for transmitting/receiving procedure of information in the network system of FIG. 33. In this example, the controller 201 functions as a master unit and the remaining devices connected to the network 205 are slave units. The master and slave units are powered, and then each slave unit checks as to if a signal transmission is allowable in the network. The signal transmission may be allowed when other signals are not circulated in the network. Then, the slave unit transmits a registration request signal to the network. The master unit waits for a registration request signal from the slave unit. Upon receipt of the registration request signal, the master unit addresses the requesting slave unit so as to receive therefrom an identification code (ID) and a control program. In response, the addressed slave unit transmits its own ID and the requested control program. Then, the master unit loads the transmitted ID and the control program into one of device-extension RAMs 209-1, 209-2 and 209-3. At this moment, the master unit checks as to if a communication error occurs. If YES, the master unit indicates an error message and stops the registration procedure of the slave unit. By such a manner, the master unit collects the respective control programs of all the slave units. The master unit executes the collected control programs to transmit various commands to the slave units to thereby control the same. Consequently, under the control by the controller 201, the slave floppy disk device 203 can record the performance data, and the slave printer 204 can print out the performance data.